#include <iostream>
#include <stack>
#include <queue>

int main() {
    // 创建一个堆栈
    std::stack<int> s;

    // 向堆栈中添加元素
    s.push(1);
    s.push(2);
    s.push(3);

    // 遍历堆栈中的元素并输出
    while (!s.empty()) {
        std::cout << s.top() << " ";
        s.pop();
    }
    std::cout << std::endl;

    // 创建一个队列
    std::queue<int> q;

    // 向队列中添加元素
    q.push(1);
    q.push(2);
    q.push(3);

    // 遍历队列中的元素并输出
    while (!q.empty()) {
        std::cout << q.front() << " ";
        q.pop();
    }
    std::cout << std::endl;

    return 0;
}